<template>
    <!-- 我们可以 使用 watch 属性监听, 来 监听 父组件传递过来的 max值,不管 watch会被触发几次, -->
    <!-- 但是最后一次,肯定是一个 合法的 max 数值 -->
    <div>
        <div class="mui-numbox" data-numbox-min='1'>
		    <button class="mui-btn mui-btn-numbox-minus" type="button">-</button>
			<input id="test" class="mui-input-numbox" type="number" value="1" @change="countChanged" ref="numbox" />
			<button class="mui-btn mui-btn-numbox-plus" type="button">+</button>
		</div>
    </div>
</template>

<script>
import mui from "../../lib/mui/js/mui.min.js"

export default {
    mounted() {
        // 当用template模板引擎动态创建,需要初始化数字选择框组件
        mui(".mui-numbox").numbox();
    },
    methods: {
        countChanged() {
            // 每当 文本框的数据被修改的时候,立即把 最新的数据,通过事件调用,传递给父组件

            // 调用父组件的方法 getcount
            this.$emit('getcount', parseInt(this.$refs.numbox.value));
        }
    },
    props: ["max"],
    watch: {
        // 属性监听
        // 使用 JS API 设置min max step
        'max': function(newVal, oldVal) {
            mui(".mui-numbox").numbox().setOption("max",newVal);
        }
    }
}
</script>

<style lang="scss" scoped>
.mui-numbox {
    vertical-align: center;
    // float: left;
}
</style>
